package com.czq.zk3.struct;

/**
 * 项目规划及管理
 * 上海大数据学院院长 ：孙丰朝
 * 技术指导及需求分析：郭洵
 * 编程：楚志高
 *
 * @author bawei  bigdata sh
 * @since @Date: 2022/6/3 20:59
 */

import lombok.Data;

/**
 * 作用是用于前后端交互的，给后端提供数据 或者失败的原因等等
 */
@Data
public class ResultLogin<T> {

    int code=200;// 200 代表成功
    String errInfo = "";
    T jdata;// 如果数据正确的，返回给前端的数据

    private static  ResultLogin  OK = new ResultLogin(200,"","");

    public ResultLogin(int code, String errInfo, T jdata) {
        this.code = code;
        this.errInfo = errInfo;
        this.jdata = jdata;
    }

    public static ResultLogin OK(){
        return  OK;
    }

    public static ResultLogin OK(Object jdata){
        return  new ResultLogin(200,"",jdata);
    }

    public static ResultLogin failed(int code){
        return  new ResultLogin(code,"",code);
    }

    public static ResultLogin failed(int code,String errInfo){
        return  new ResultLogin(code,errInfo,null);
    }


    @Override
    public String toString() {
        return "Result{" +
                "code=" + code +
                ", errInfo='" + errInfo + '\'' +
                ", jdata=" + jdata +
                '}';
    }
}
